package com.jwsoft.manager.common.vo.eduAddress;

import com.baomidou.mybatisplus.annotation.TableField;
import com.bifang.assistant.common.vo.BasePageVO;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 地址表QueryVO
 *
 * @author wangtao
 * @since 2022-11-24
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Schema(name = "EduAddressQueryVO", title = "地址表查询VO", description = "地址表查询实体类")
public class EduAddressQueryVO extends BasePageVO {

    @Schema(name = "addressId", title = "地址id")
    private String addressId;

    @Schema(name = "addressCode", title = "地址编码")
    private String addressCode;

    @Schema(name = "addressName", title = "地址名称")
    private String addressName;

    @Schema(name = "schoolCategory", title = "学段")
    private String schoolCategory;

    @Schema(name = "schoolId", title = "学校id")
    private String schoolId;

    @Schema(name = "addressType", title = "地址类型 ")
    private String addressType;

    @Schema(name = "year", title = "地址入库年份")
    private Integer year;

    @Schema(name = "fiexed", title = "是否可编辑 0 否 1 是")
    private String fiexed;

    @Schema(name = "fictitious", title = "是否虚拟 0 否 1 是")
    private String fictitious;

    @Schema(name = "contact", title = "联系人")
    private String contact;

    @Schema(name = "cellphone", title = "联系人手机")
    private String cellphone;

    @Schema(name = "phone", title = "联系人电话")
    private String phone;

    @Schema(name = "rate", title = "级别")
    private Integer rate;

    @Schema(name = "orderNo", title = "排序号")
    private Integer orderNo;

    @Schema(name = "parentId", title = "父级地址编码")
    private String parentId;
    @Schema(name = "parentPath", title = "父级完整地址")
    private String parentPath;
    @Schema(name = "longitude", title = "经度")
    private BigDecimal longitude;

    @Schema(name = "latitude", title = "纬度")
    private BigDecimal latitude;

    @Schema(name = "remarks", title = "描述")
    private String remarks;

    @Schema(name = "status", title = "状态")
    private String status;

    @Schema(name = "handleStatus", title = "地址分解状态：0 未处理 1 处理成功 2 处理失败")
    private String handleStatus;

    @Schema(name = "handleTime", title = "处理时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date handleTime;

    @Schema(name = "handleMessage", title = "处理结果信息")
    private String handleMessage;
    @Schema(name = "authStatus", title = "审核状态")
    private String authStatus;
    @Schema(name = "authStatusName", title = "审核状态")
    private String authStatusName;
    @Schema(name = "authRemarks", title = "审核意见")
    private String authRemarks;

    @Schema(name = "authTime", title = "审核时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date authTime;

    @Schema(name = "authUserId", title = "审核人")
    private String authUserId;

    @Schema(name = "addressTreeId", title = "对应edu_address_tree表的叶子节点address_id")
    private String addressTreeId;
    @Schema(name = "matchingStatus", title = "是否匹配学区 0 未匹配 1已匹配成功")
    private String matchingStatus;
    @Schema(name = "matchingTime", title = "匹配学区处理时间")
    private Date matchingTime;

    @Schema(name = "matchingMessage", title = "匹配学区处理结果信息")
    private String matchingMessage;
    @Schema(name = "locationStatus", title = "是否匹配经纬度 0 未匹配 1已匹配成功")
    private String locationStatus;
    @Schema(name = "locationTime", title = "匹配经纬度处理时间")
    private Date locationTime;

    @Schema(name = "locationMessage", title = "匹配经纬度处理结果信息")
    private String locationMessage;
    @Schema(name = "cityCode", title = "城市")
    private String cityCode;
    @Schema(name = "areaCode", title = "行政区划")
    private String areaCode;
    @Schema(name = "streetCode", title = "乡镇街道")
    private String streetCode;
    @Schema(name = "bnxxFlag", title = "本年是否有小学就读")
    private String bnxxFlag;
    @Schema(name = "bnczFlag", title = "本年是否有初中就读")
    private String bnczFlag;
    @Schema(name = "streetCodeFlag", title = "所属乡镇街道是否为空")
    private Boolean streetCodeFlag;
    private Integer limitCount;
}
